// https://zhuanlan.zhihu.com/p/75499871
/**
 * rebase 使用来解决代码冲突
 * merge 与 rebase 的区别
 * 当需要保留详细的合并信息的时候建议使用，特别是需要将分支合并进入 master 分支时
 * 当发现自己修改某个功能时，频繁进行了 git commit 提交时，发现其实过多的提交信息没有必要时使用，分支多，内容多时可以考虑使用
 * /

1

2

/**
 * 冲突测试
 * gitFilter test A
 * gitFilter 文件提交测试
 * 文件 pull 冲突后解决冲突流程：
 * 1. git pull origin 分支名称 --rebase
 * 2. git add . 添加远程合并后的文件
 * 2. git status 查看是否有冲突
 * 3. git rebase --continue 解决冲突并下一个(类似于git commit)
 * 4. git push
 * 
 * // 关闭变基
 * git rebase --abort
 */

// https://zhuanlan.zhihu.com/p/462530860
/**
 * git 压缩分支
 * [x] 表示变基工具压缩最后 x 次提交的命令语法
 * 本地提交的时候使用 git rebase -i HEAD~[x]
 * 语法 git rebase -i HEAS~4 // 表示离HEAD最近的4个提交
 *
 * 最好不要使用 -f 强制提交
 * git rebase -i // 进入 Git 内置 vim 界面。commit 记录被标记为 pick，意思是这四次提交都会被采用并显示在 Git 的提交记录中。
 * 进入编辑后去除commit
 * 之后再保存
 *
 * 修改之前分支的commit名称
 * pick 修改成 r(record)
 *
 * 流程
 * git rebase -i
 * 将pick 修改成 s保留一个pick，将多个请求合并为一个提交
 * 修改保存后push
 *
 * 直接结束变基 git rebase --abort
 *
 */
